﻿using System;
using System.Runtime.Serialization;

namespace Zombie.Services.Definitions
{
	[DataContract(Namespace = "https://zsr.codeplex.com/services/")]
	public class ZombieTypeDetails : ZombieTypeSummary
	{

		/// <summary>
		/// Initializes a new instance of the ZombieTypeDetails class.
		/// </summary>
        [Obsolete("ZombieTypeDetails.ctr() is only used by the DataContractSerializer", true)]
		public ZombieTypeDetails()
		{
		}

		/// <summary>
		/// Initializes a new instance of the ZombieTypeDetails class.
		/// </summary>
		public ZombieTypeDetails(string zombieTypeName, int zombieTypeKey, string briefDescription = null, Uri thumbnailImage = null, string detailedDescription = null, string behavior = null, string weaknesses = null, string warnings = null, DateTimeOffset? lastSighted = null)
			: base(zombieTypeName, zombieTypeKey, briefDescription, thumbnailImage, lastSighted)
		{
			DetailedDescription = detailedDescription;
			Behavior = behavior;
			Weaknesses = weaknesses;
			Warnings = warnings;

		}

		[DataMember]
		public string DetailedDescription { get; internal set; }
		[DataMember]
		public string Behavior { get; internal set; }
		[DataMember]
		public string Weaknesses { get; internal set; }
		[DataMember]
		public string Warnings { get; internal set; }
		[DataMember]
		public Uri LargeImage { get; internal set; }
	}
}
